/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package BL;

import BO.Cantones;
import BO.CentroCostos;
import BO.ViaticoPorDia;
import DA.DAViaticoPorDia;
import java.sql.Date;
import java.sql.SQLException;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.ListIterator;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JComboBox;
import javax.swing.table.TableModel;

/**
 *
 * @author Daniel.Cerdas
 */
public class BLViaticoPorDia {
    public static void AgregarViatico(Date FechaDetalle, int IDCanton,String HoraEntrada,String HoraSalida,double Desayuno, double Almuerzo,double Cena, double Hospedaje,double TotalDiario,String IDCentroCosto,int Numero){
      ViaticoPorDia DetalleViatico = new ViaticoPorDia(FechaDetalle, IDCanton, HoraEntrada, HoraSalida, Desayuno, Almuerzo, Cena, Hospedaje, TotalDiario, IDCentroCosto, Numero);
      
    }  
  public static void ModificarViativo(Date FechaDetalle, int IDCanton,String HoraEntrada,String HoraSalida,double Desayuno, double Almuerzo,double Cena, double Hospedaje,double TotalDiario,String IDCentroCosto,int Numero){
      ViaticoPorDia DetalleViatico = new ViaticoPorDia(FechaDetalle, IDCanton, HoraEntrada, HoraSalida, Desayuno, Almuerzo, Cena, Hospedaje, TotalDiario, IDCentroCosto, Numero);
  }
  public static void EliminarViatico(int Numero){
  } 
  public static JComboBox ListaCantones(JComboBox Combo){
   ArrayList Lista =  new ArrayList();
   DAViaticoPorDia ConexionBDViatico = new DAViaticoPorDia();
        try {
            Lista=ConexionBDViatico.obtenerCantones();
        } catch (SQLException ex) {
            Logger.getLogger(BLViaticoPorDia.class.getName()).log(Level.SEVERE, null, ex);
        }
        ListIterator<Cantones> ListaIn = Lista.listIterator();
        while( ListaIn.hasNext() ){
            Combo.addItem(ListaIn.next().getNombreCanton());
        } 
        
       return Combo;
  }
   public static int ObtenerIDCanton(String nombre){
   int numero=0;
   ArrayList Lista =  new ArrayList();
   DAViaticoPorDia ConexionBDViatico = new DAViaticoPorDia();
        try {
            Lista=ConexionBDViatico.obtenerCantones();
        } catch (SQLException ex) {
            Logger.getLogger(BLViaticoPorDia.class.getName()).log(Level.SEVERE, null, ex);
        }
        ListIterator<Cantones> ListaIn = Lista.listIterator();
        while( ListaIn.hasNext() ){
            if((ListaIn.next().getNombreCanton().compareTo(nombre))==0)
                numero=ListaIn.next().getIdCanton();
        } 
        
       return numero;
  }
  public static String ObtenerIDCentroCosto(String nombre){
   String IDCentroCosto="";
   ArrayList Lista =  new ArrayList();
   DAViaticoPorDia ConexionBDViatico = new DAViaticoPorDia();
        try {
            Lista=ConexionBDViatico.obtenerCentroCosto();
        } catch (SQLException ex) {
            Logger.getLogger(BLViaticoPorDia.class.getName()).log(Level.SEVERE, null, ex);
        }
        ListIterator<CentroCostos> ListaIn = Lista.listIterator();
        while( ListaIn.hasNext() ){
            if((ListaIn.next().getProyecto().compareTo(nombre))==0)
                IDCentroCosto=ListaIn.next().getIdCentroCostos();
        } 
        
       return IDCentroCosto;
  }
    public static JComboBox ListaCentroCosto(JComboBox CmbCentroCosto) {
     ArrayList Lista =  new ArrayList();
   DAViaticoPorDia ConexionBDViatico = new DAViaticoPorDia();
        try {
            Lista=ConexionBDViatico.obtenerCentroCosto();
        } catch (SQLException ex) {
            Logger.getLogger(BLViaticoPorDia.class.getName()).log(Level.SEVERE, null, ex);
        }
        ListIterator<CentroCostos> ListaIn = Lista.listIterator();
        while( ListaIn.hasNext() ){
            CmbCentroCosto.addItem(ListaIn.next().getProyecto());
        } 
        
       return CmbCentroCosto;
    }

    public static void AgregarListaViaticos(TableModel model) throws SQLException, ParseException {
        DAViaticoPorDia ConexionViaticos = new DAViaticoPorDia();
        for(int i=0;i<model.getRowCount();i++){
            
            String str = model.getValueAt(i, 0).toString();
            DateFormat formatter ; 
             
            formatter = new SimpleDateFormat("dd/MM/yy");
            java.util.Date date = formatter.parse(str);
            
           // FechaDetalle=Date.valueOf(model.getValueAt(i, 0).toString());
            int IDCanton= Integer.parseInt(model.getValueAt(i, 1).toString());
            String HoraEntrada=model.getValueAt(i, 2).toString();
            String HoraSalida=model.getValueAt(i, 3).toString();
            double Desayuno=Double.parseDouble(model.getValueAt(i, 4).toString());
            double Almuerzo= Double.parseDouble(model.getValueAt(i, 5).toString());
            double Cena= Double.parseDouble(model.getValueAt(i, 6).toString());
            double Hospedaje= Double.parseDouble(model.getValueAt(i, 7).toString());
            double TotalDiario=Double.parseDouble(model.getValueAt(i, 8).toString());
            String IDCentroCosto= ObtenerIDCentroCosto(model.getValueAt(i, 9).toString());
            int Numero=Integer.parseInt(model.getValueAt(i, 10).toString());
            ViaticoPorDia DetalleViatico = new ViaticoPorDia(date, IDCanton, HoraEntrada, HoraSalida, Desayuno, Almuerzo, Cena, Hospedaje, TotalDiario, IDCentroCosto, Numero);
            ConexionViaticos.insertarViatico(DetalleViatico);
        }
        }
}
